MENU

Python学習 〜動画ファイル整理ツールを自作してみる〜④

目次

if文で動画フォルダの振り分けルールを実装する

前回は、素材フォルダ(Sozai)内のフォルダ名から、先頭の番号を取得するところまで実装しました。

今回は、取得した番号を利用して、実際にどのフォルダへ移動するかを判定する処理を作ります。

いよいよ「自動整理ツール」らしくなってきました。

今回の目標

今回実装するルールは以下の通りです。

先頭番号処理
1Hozonへ移動
2Deleteへ移動
3Hozonへ移動+Backupへコピー

例えば、

1旅行動画
2不要動画
3永久保存動画

というフォルダがあった場合、

旅行動画 → Hozon
不要動画 → Delete
永久保存動画 → Hozon + Backup

となるようにします。

必要なフォルダを準備する

まずは、操作するフォルダを定義します。

from pathlib import Path

base = Path('/Volumes/Doga')

sozai = base / 'Sozai'
hozon = base / 'Hozon'
delete = base / 'Delete'
backup = base / 'Backup'

これで、各フォルダを簡単に扱えるようになりました。

if文で振り分ける

前回取得した先頭文字を使って、条件分岐を書きます。

for folder in sozai.iterdir():

    if not folder.is_dir():
        continue

    head = folder.name[0]
    new_name = folder.name[1:]

    if head == '1':
        print('保存')

    elif head == '2':
        print('削除')

    elif head == '3':
        print('保存+バックアップ')

実行すると、

保存
削除
保存+バックアップ

のように表示されます。

実際の移動先を確認する

いきなりファイルを移動すると危険なので、まずは移動先を表示して確認します。

for folder in sozai.iterdir():

    if not folder.is_dir():
        continue

    head = folder.name[0]
    new_name = folder.name[1:]

    if head == '1':
        print(hozon / new_name)

    elif head == '2':
        print(delete / new_name)

    elif head == '3':
        print(hozon / new_name)
        print(backup / new_name)

例えば、

1旅行動画
2不要動画
3永久保存動画

がある場合、

/Volumes/Doga/Hozon/旅行動画
/Volumes/Doga/Delete/不要動画
/Volumes/Doga/Hozon/永久保存動画
/Volumes/Doga/Backup/永久保存動画

のように表示されます。

なぜ最初はprintなのか

自動化プログラムでは、最初から移動処理を書いてしまうと、思わぬ場所にファイルが移動してしまう危険があります。

そのため、

  1. 判定する
  2. printで確認する
  3. 正しいことを確認する
  4. 実際の移動処理を書く

という順番で開発することが大切です。

これは今回のプログラムだけでなく、今後の自動化プログラムを作るときにも役立つ考え方だと思います。

今回学んだこと

今回学んだ内容は以下の通りです。

  • if、elifによる条件分岐
  • 複数のフォルダをPathで管理する方法
  • 条件によって処理を変更する方法
  • 自動化プログラムを安全に開発する考え方

ここまでできれば、次回はいよいよ実際にフォルダを移動・コピーする処理を実装できます。

次回予告

次回は、Pythonのshutilを利用して、

  • フォルダを移動する
  • フォルダをコピーする
  • 自動で保存・削除・バックアップを行う

という、動画ファイル整理ツールの中心部分を完成させます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

FIREを目指しながら、投資・プログラミング・家庭菜園・資格勉強に取り組んでいます。試行錯誤しながら積み上げる日々を記録するブログです。

コメント

コメントする

目次